package com.ruoyi.product.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 课程对象 tb_course
 * 
 * @author Sun
 * @date 2023-01-30
 */
public class TbCourse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Integer courseId;

    /** 课程名称 */
    @Excel(name = "课程名称")
    private String courseName;

    /** 课程简介 */
    @Excel(name = "课程简介")
    private String courseContext;

    /** 用户id */
    @Excel(name = "用户id")
    private Integer roleId;

    /** 课程logo图片 */
    @Excel(name = "课程logo图片")
    private String courseLogo;

    /** 课程视频 */
    @Excel(name = "课程视频")
    private String courseVideo;

    /** 课程状态(0未售 1已售) */
    @Excel(name = "课程状态(0未售 1已售)")
    private Long courseStatus;

    /** 开始课程时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始课程时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date courseStarttime;

    /** 结束课程时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束课程时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date courseEndtime;

    /** 课程价格 */
    @Excel(name = "课程价格")
    private Long coursePrice;

    /** 删除状态0：存在2：删除 */
    private Integer delFlag;

    /** 课程类型id */
    @Excel(name = "课程类型id")
    private Integer courseTypeId;

    public void setCourseId(Integer courseId) 
    {
        this.courseId = courseId;
    }

    public Integer getCourseId() 
    {
        return courseId;
    }
    public void setCourseName(String courseName) 
    {
        this.courseName = courseName;
    }

    public String getCourseName() 
    {
        return courseName;
    }
    public void setCourseContext(String courseContext) 
    {
        this.courseContext = courseContext;
    }

    public String getCourseContext() 
    {
        return courseContext;
    }
    public void setRoleId(Integer roleId) 
    {
        this.roleId = roleId;
    }

    public Integer getRoleId() 
    {
        return roleId;
    }
    public void setCourseLogo(String courseLogo) 
    {
        this.courseLogo = courseLogo;
    }

    public String getCourseLogo() 
    {
        return courseLogo;
    }
    public void setCourseVideo(String courseVideo) 
    {
        this.courseVideo = courseVideo;
    }

    public String getCourseVideo() 
    {
        return courseVideo;
    }
    public void setCourseStatus(Long courseStatus) 
    {
        this.courseStatus = courseStatus;
    }

    public Long getCourseStatus() 
    {
        return courseStatus;
    }
    public void setCourseStarttime(Date courseStarttime) 
    {
        this.courseStarttime = courseStarttime;
    }

    public Date getCourseStarttime() 
    {
        return courseStarttime;
    }
    public void setCourseEndtime(Date courseEndtime) 
    {
        this.courseEndtime = courseEndtime;
    }

    public Date getCourseEndtime() 
    {
        return courseEndtime;
    }
    public void setCoursePrice(Long coursePrice) 
    {
        this.coursePrice = coursePrice;
    }

    public Long getCoursePrice() 
    {
        return coursePrice;
    }
    public void setDelFlag(Integer delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() 
    {
        return delFlag;
    }
    public void setCourseTypeId(Integer courseTypeId) 
    {
        this.courseTypeId = courseTypeId;
    }

    public Integer getCourseTypeId() 
    {
        return courseTypeId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("courseId", getCourseId())
            .append("courseName", getCourseName())
            .append("courseContext", getCourseContext())
            .append("roleId", getRoleId())
            .append("courseLogo", getCourseLogo())
            .append("courseVideo", getCourseVideo())
            .append("courseStatus", getCourseStatus())
            .append("courseStarttime", getCourseStarttime())
            .append("courseEndtime", getCourseEndtime())
            .append("coursePrice", getCoursePrice())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("courseTypeId", getCourseTypeId())
            .toString();
    }
}
